{
StButton *button = ST_BUTTON (actor);
StButtonPrivate *priv = st_button_get_instance_private (button);
- StButtonMask mask = ST_BUTTON_MASK_FROM_BUTTON (event->button);
+ int button_nr = clutter_event_get_button ((ClutterEvent *) event);
+ StButtonMask mask = ST_BUTTON_MASK_FROM_BUTTON (button_nr);
ClutterInputDevice *device = clutter_event_get_device ((ClutterEvent*) event);
if (priv->press_sequence)
{
StButton *button = ST_BUTTON (actor);
StButtonPrivate *priv = st_button_get_instance_private (button);
- StButtonMask mask = ST_BUTTON_MASK_FROM_BUTTON (event->button);
+ int button_nr = clutter_event_get_button ((ClutterEvent *) event);
+ StButtonMask mask = ST_BUTTON_MASK_FROM_BUTTON (button_nr);
ClutterInputDevice *device = clutter_event_get_device ((ClutterEvent*) event);
if (priv->button_mask & mask)
ClutterActor *target;
gboolean is_click;
- stage = clutter_event_get_stage ((ClutterEvent *) event);
+ stage = CLUTTER_STAGE (clutter_actor_get_stage (actor));
target = clutter_stage_get_event_actor (stage, (ClutterEvent *) event);
is_click = priv->grabbed && clutter_actor_contains (actor, target);
- st_button_release (button, device, mask, is_click ? event->button : 0, NULL);
+ st_button_release (button, device, mask, is_click ? button_nr : 0, NULL);
priv->grabbed &= ~mask;
if (priv->grab && priv->grabbed == 0)
StButtonMask mask = ST_BUTTON_MASK_FROM_BUTTON (1);
ClutterEventSequence *sequence;
ClutterInputDevice *device;
+ ClutterEventType event_type;
if (priv->pressed != 0)
return CLUTTER_EVENT_PROPAGATE;
device = clutter_event_get_device ((ClutterEvent*) event);
sequence = clutter_event_get_event_sequence ((ClutterEvent*) event);
+ event_type = clutter_event_type ((ClutterEvent *) event);
- if (event->type == CLUTTER_TOUCH_BEGIN && !priv->grab && !priv->press_sequence)
+ if (event_type == CLUTTER_TOUCH_BEGIN && !priv->grab && !priv->press_sequence)
{
st_button_press (button, device, 0, sequence);
return CLUTTER_EVENT_STOP;
}
- else if (event->type == CLUTTER_TOUCH_END &&
+ else if (event_type == CLUTTER_TOUCH_END &&
priv->device == device &&
priv->press_sequence == sequence)
{
st_button_release (button, device, mask, 0, sequence);
return CLUTTER_EVENT_STOP;
}
- else if (event->type == CLUTTER_TOUCH_CANCEL)
+ else if (event_type == CLUTTER_TOUCH_CANCEL)
{
st_button_fake_release (button);
}
{
StButton *button = ST_BUTTON (actor);
StButtonPrivate *priv = st_button_get_instance_private (button);
+ uint32_t keyval;
if (priv->button_mask & ST_BUTTON_ONE)
{
- if (event->keyval == CLUTTER_KEY_space ||
- event->keyval == CLUTTER_KEY_Return ||
- event->keyval == CLUTTER_KEY_KP_Enter ||
- event->keyval == CLUTTER_KEY_ISO_Enter)
+ keyval = clutter_event_get_key_symbol ((ClutterEvent *) event);
+
+ if (keyval == CLUTTER_KEY_space ||
+ keyval == CLUTTER_KEY_Return ||
+ keyval == CLUTTER_KEY_KP_Enter ||
+ keyval == CLUTTER_KEY_ISO_Enter)
{
st_button_press (button, NULL, ST_BUTTON_ONE, NULL);
return TRUE;
{
StButton *button = ST_BUTTON (actor);
StButtonPrivate *priv = st_button_get_instance_private (button);
+ uint32_t keyval;
if (priv->button_mask & ST_BUTTON_ONE)
{
- if (event->keyval == CLUTTER_KEY_space ||
- event->keyval == CLUTTER_KEY_Return ||
- event->keyval == CLUTTER_KEY_KP_Enter ||
- event->keyval == CLUTTER_KEY_ISO_Enter)
+ keyval = clutter_event_get_key_symbol ((ClutterEvent *) event);
+
+ if (keyval == CLUTTER_KEY_space ||
+ keyval == CLUTTER_KEY_Return ||
+ keyval == CLUTTER_KEY_KP_Enter ||
+ keyval == CLUTTER_KEY_ISO_Enter)
{
gboolean is_click;